// clust_util.h
// ------------
// Written by Sanmay Das for CS 181, Spring 2000
// Updated by Dan Weiss for CS 181, Spring 2001
// Updated for clustering asst by SD, Spring 2001
// Do NOT modify this file

#ifndef CLUST_UTIL_H
#define CLUST_UTIL_H

#include <stdlib.h>

#define MAXLINE 800

// The structure used to describe a dataset.
typedef struct {
  int numattribs; // The number of attributes in the dataset
} DatasetDescription;

// The data structure used to represent an instance of a training or
// testing example, specific to the adult dataset.

typedef struct {
  double attribs[48]; 
} inst;

// Functions for validation of command line arguments, parsing input
// from files into arrays of insts, and printing out a dataset contained
// in such an array.
int ValidateInput(int argc, char **argv, int *num_clusters, int *num_examples);
int ParseInput(DatasetDescription DD, inst *dataset, int n, FILE *datafile);
void PrintOutput(DatasetDescription DD, inst *dataset, int n);

#endif

